As used throughout this specification including claims, “spam” is any e-mail that is unwanted by the recipient. As spam has regrettably become more widely prevalent, techniques to combat spam are beginning to emerge. One such technique is to allow e-mail recipients to specify a list of addresses, domains, and/or top-level domains to be always blocked or automatically allowed. The “block” list is often referred to as a “blacklist”, while the “allow” list is often referred to as a “whitelist”. The inspiration behind blacklists and whitelists is the observation that most computer users exchange e-mail with a relatively small and fixed set of addresses. These addresses are on a smaller list of domains, and these domains are on an even smaller list of top-level domains. A significant amount of spam comes from addresses, domains, and top-level domains that a user rarely, if ever, legitimately interacts with. Blocking entire domains or top-level domains (as well as addresses) thus becomes a relatively easy way to block a significant amount of spam. There is a need to improve the use of whitelists and blacklists in fighting spam. Much spam also comes from addresses claiming to be on common domains such as yahoo.com, msn.com, aol.com, and hotmail.com. Blocking these domains would, for most computer users, block too much legitimate e-mail. Furthermore, many spammers falsely indicate that they are sending e-mails from such common domains when, in reality, they are not. In other words, the spammer is spoofing his or her address. There is a need to develop techniques to counter such spoofing.